from django.db import models
from time import time
from universidades.models import Universidad

DIMENSIONES = ( 
    ( 1, 'Formacion continua' ),
    ( 2, 'Transferencia de conocimiento' ),
    ( 3, 'Compromiso social' ),
 )


class IndicadoresBooleanos( models.Model ):
    dimension = models.IntegerField( choices = DIMENSIONES )
    nombre = models.CharField( max_length = 200, help_text = 'Nombre' )

    def __unicode__( self ):
        return self.nombre

    class Meta:
        verbose_name_plural = 'Indicadores Booleanos'


class IndicadoresEnteros( models.Model ):
    dimension = models.IntegerField( choices = DIMENSIONES )
    nombre = models.CharField( max_length = 200, help_text = 'Nombre' )

    def __unicode__( self ):
        return self.nombre

    class Meta:
        verbose_name_plural = 'Indicadores Enteros'

class IndicadoresPorcentaje( models.Model ):
    dimension = models.IntegerField( choices = DIMENSIONES )
    nombre = models.CharField( max_length = 200, help_text = 'Nombre' )
    def __unicode__( self ):
        return self.nombre

class IndicadoresPorcentaje( models.Model ):
    dimension = models.IntegerField( choices = DIMENSIONES )
    nombre = models.CharField( max_length = 200, help_text = 'Nombre' )

    def __unicode__( self ):
        return self.nombre

    class Meta:
        verbose_name_plural = 'Indicadores Porcentuales'


class IndicadoresChoices( models.Model ):
    dimension = models.IntegerField( choices = DIMENSIONES )
    nombre = models.CharField( max_length = 200, help_text = 'Nombre' )

    def __unicode__( self ):
        return self.nombre

    class Meta:
        verbose_name_plural = 'Indicadores Con Opciones'


def get_uploaded_filename( instance, filename ):
    return "informes_pdf/%s_%s" % ( str( time() ).replace( ".", "_" ) , filename )

class RespuestaTexto( models.Model ):
    universidad = models.ForeignKey( Universidad )
    respuesta = models.TextField( help_text = "Haga un resumen como maximo de 10 lineas." )
    archivo = models.FileField( help_text = 'Ingrese el documento completo en formato pdf.', upload_to = get_uploaded_filename, blank = False )
    fecha_inicio = models.DateField()
    fecha_fin = models.DateField()


class RespuestaBooleanos( models.Model ):
    indicador = models.ForeignKey( IndicadoresBooleanos )
    respuesta = models.PositiveIntegerField()
    universidad = models.ForeignKey( Universidad )
    fecha_inicio = models.DateField()
    fecha_fin = models.DateField()


class RespuestaEnteros( models.Model ):
    indicador = models.ForeignKey( IndicadoresEnteros )
    respuesta = models.FloatField()
    universidad = models.ForeignKey( Universidad )
    fecha_inicio = models.DateField()
    fecha_fin = models.DateField()


class RespuestaPorcentaje( models.Model ):
    indicador = models.ForeignKey( IndicadoresPorcentaje )
    respuesta = models.FloatField()
    universidad = models.ForeignKey( Universidad )
    fecha_inicio = models.DateField()
    fecha_fin = models.DateField()


class RespuestaChoices( models.Model ):
    indicador = models.ForeignKey( IndicadoresChoices )
    respuesta = models.PositiveIntegerField()
    universidad = models.ForeignKey( Universidad )
    fecha_inicio = models.DateField()
    fecha_fin = models.DateField()
